package com.hua.nailcampus.acl.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.hua.nailcampus.acl.model.vo.UserLoginVo;
import com.hua.nailcampus.acl.model.User;
import com.hua.nailcampus.acl.model.vo.UserVo;
import com.hua.nailcampus.utils.Result;

import java.util.List;

/**
 * @Author:chenjianhua
 * @Date:2023/11/15 19:35
 * @Version 1.8
 */
public interface UserService extends IService<User> {
    /**
     *根据ID查询用户信息
     * @param id
     * @return
     */
    UserVo getUser(Integer id);

    /**
     * 密码登录
     * @param loginParams
     * @return
     */
    UserVo loginUserByPassword(UserLoginVo loginParams);

    UserVo getUserByPhone(String phone);

    void updateUser(UserVo userVo);

    UserVo getUserById(Integer userId,Integer id);

    void logout(Integer userId);

    IPage<UserVo> getAllUser(Integer current, Integer limit,User user);

    Integer getUserRole(Integer userId);

    void UpdateRole(UserVo userVo);

    void createRole(User user);
}
